package com.iphanta.community.tags.service;

import com.iphanta.community.tags.traffic.*;
import com.iphanta.community.tags.traffic.vo.TagInfo;

import java.util.List;

/**
 * @author 墨声 E-mail: zehong.hongframe.huang@gmail.com
 * create time: 3/7/22 5:14 PM
 */
public interface TagsService {

    @Deprecated
    TagsResponse list(TagsV1Request request);

    TagsResponse tags( TagsRequest request);

    List<TagInfo> tags(List<String> codes);

    List<TagInfo> tags(String codes);

    List<String> sortTagCodes(List<String> codes);

    int add(AddTagItemRequest request);

    QueryOneTagItemResponse queryOne(QueryOneTagItemRequest request);

    QueryTagItemResponse query(QueryTagItemRequest request);

    AllTagItemResponse queryAll();

    TagDimensionResponse tagDimension();

    ModifyTagItemResponse modify(ModifyTagItemRequest request);

    Boolean validCode(String code);

    Boolean validCode(List<String> codes);

    Boolean validCode(String[] codes);

}
